package com.vegetable.modules.service.sys;

import com.vegetable.modules.entity.sys.SysUserEntity;

import java.util.List;

/**
 * 在线用户服务接口
 */
public interface OnlineUserService {

    /**
     * 添加在线用户
     * @param user 用户实体
     * @param token 用户token
     */
    void addUser(SysUserEntity user, String token);

    /**
     * 移除在线用户
     * @param userId 用户ID
     */
    void removeUser(Long userId);

    /**
     * 获取所有在线用户
     * @return 在线用户列表
     */
    List<SysUserEntity> getOnlineUsers();

    /**
     * 检查用户是否在线
     * @param userId 用户ID
     * @return 是否在线
     */
    boolean isUserOnline(Long userId);

    /**
     * 根据token获取用户ID
     * @param token 用户token
     * @return 用户ID
     */
    Long getUserIdByToken(String token);
}